package com.ylyq.ylxx.model.bean;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * @ClassName OceanengineQueryAdConvert
 * @Description TODO
 * @Author xiaweichao
 * @Date 2020/9/21 20:36
 * @Version 1.0
 */
@NoArgsConstructor
@Data
@ApiModel(value = "查询计划可用转化id返回参数")
public class OceanengineQueryAdConvert {

    /**
     * message : OK
     * code : 0
     * data : {"list":[{"disabled":false,"external_actions":[{"external_actions":null,"external_name":"商品购买","convert_id":null,"deep_external_actions":null,"external_action_name":"商品购买","belong":null,"convert_data_type":null,"disabled":false,"source":"SOURCE_CONFIG","external_action":"AD_CONVERT_TYPE_SHOPPING","action_track_url":null}],"convert_type":"AD_CONVERT_SOURCE_TYPE_CONFIG"}]}
     * request_id : 202009212034090100100252020208EA03
     */

    private String message;
    private int code;
    private DataBean data;
    private String request_id;

    @NoArgsConstructor
    @Data
    @ApiModel(value = "查询计划可用转化id返回参数-数据")
    public static class DataBean {
        private List<ListBean> list;

        @NoArgsConstructor
        @Data
        @ApiModel(value = "查询计划可用转化id返回参数-集合")
        public static class ListBean {
            /**
             * disabled : false
             * external_actions : [{"external_actions":null,"external_name":"商品购买","convert_id":null,"deep_external_actions":null,"external_action_name":"商品购买","belong":null,"convert_data_type":null,"disabled":false,"source":"SOURCE_CONFIG","external_action":"AD_CONVERT_TYPE_SHOPPING","action_track_url":null}]
             * convert_type : AD_CONVERT_SOURCE_TYPE_CONFIG
             */

            private boolean disabled;
            private String convert_type;
            private List<ExternalActionsBean> external_actions;

            @NoArgsConstructor
            @Data
            @ApiModel(value = "查询计划可用转化id返回参数-集合详情")
            public static class ExternalActionsBean {
                /**
                 * external_actions : null
                 * external_name : 商品购买
                 * convert_id : null
                 * deep_external_actions : null
                 * external_action_name : 商品购买
                 * belong : null
                 * convert_data_type : null
                 * disabled : false
                 * source : SOURCE_CONFIG
                 * external_action : AD_CONVERT_TYPE_SHOPPING
                 * action_track_url : null
                 */
                @ApiModelProperty(value = "多转化目标")
                private String[] external_actions;
                @ApiModelProperty(value = "自定义转化名称")
                private String external_name;
                @ApiModelProperty(value = "转化id，返回自定义转化目标id")
                private String convert_id;
                @ApiModelProperty(value = "转化类型名称")
                private String external_action_name;
                @ApiModelProperty(value = "线索通来源，详见【附录-枚举值-线索通来源】")
                private String[] belong;
                @ApiModelProperty(value = "转化统计方式，详见【附录-枚举值-转化统计方式】")
                private String convert_data_type;
                @ApiModelProperty(value = "转化是否禁用,true 表示已经禁用，false 表示可用")
                private boolean disabled;
                @ApiModelProperty(value = "转化目标创建来源，详见【附录-枚举值-转化目标创建来源】，\n" +
                        "                可选值: 固定 SOURCE_CONFIG,转化 SOURCE_METEOR,建站 SOURCE_TETRIS")
                private String source;
                @ApiModelProperty(value = "转化目标，返回预定义的转化类型，详见【附录-枚举值-转化类型】，即原转化接口中 convert_type")
                private String external_action;
                @ApiModelProperty(value = "转化监测连接")
                private String action_track_url;

                private List<DeepExternalActions> deep_external_actions;
                @NoArgsConstructor
                @Data
                @ApiModel(value = "查询计划可用转化id返回参数-集合详情")
                public static class DeepExternalActions {
                    @ApiModelProperty(value = "深度转化的转化目标,详见【附录-枚举值-转化类型】")
                    private String deep_external_action;
                    @ApiModelProperty(value = "深度转化转化名称")
                    private String deep_external_name;
                    @ApiModelProperty(value = "深度转化是否禁用,true 表示已经禁用，false 表示可用")
                    private boolean disabled;
                }


            }
        }
    }
}
